#include <iostream>
#include <fstream>
#include <vector>
#include <ctime>

std::vector<int> bubble_sort(std::vector<int> arr) {
    clock_t start_time = clock();
    int n = arr.size();
    for (int i = 0; i < n; i++) {
        bool swapped = false;
        for (int j = 0; j < n - i - 1; j++) {
            if (arr[j] > arr[j + 1]) {
                std::swap(arr[j], arr[j + 1]);
                swapped = true;
            }
        }
        if (!swapped) {
            std::cout << "Массив уже отсортирован" << std::endl;
            break;
        }
    }
    clock_t end_time = clock();
    std::cout << "Время сортировки: " << (end_time - start_time) / CLOCKS_PER_SEC << " секунд" << std::endl;
    return arr;
}

int main() {
    std::vector<std::string> filenames = {"m1_sorted.txt", "m2_reverse.txt", "m3_shuffle.txt"};
    for (const auto& filename : filenames) {
        std::ifstream file(filename);
        std::vector<int> arr;
        int value;
        while (file >> value) {
            arr.push_back(value);
        }
        file.close();

        // Сортируем массив
        std::vector<int> sorted_arr = bubble_sort(arr);
    }
    return 0;
}